package org.nf.web.servlet;

/**
 * @Author czl
 * @Date 2024-05-15
 * 请求调用适配器
 */
public interface HandlerAdapter {
    /**
     * 当前适配器是否支持调用这个Controller，如果支持则返回true
     * @param handler
     * @return
     */
    boolean supports(Object handler);

    /**
     * 请求调用
     *
     * @param handler    处理请求的对象(有可能是一个Class，也有可能是一个Method)
     * @param servletApi 请求对象和响应对象
     * @return
     * @throws Exception 请求处理过程产生的异常
     */
    Object handler(Object handler, ServletApi servletApi) throws Exception;
}
